-
Notifications
You must be signed in to change notification settings - Fork 281
docs: custom multi-version build with git worktree, CSS fix for long … #765
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Summary of Changes
Hello @cmgzn, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!
This pull request significantly refactors the documentation build system by replacing the sphinx_multiversion
extension with a custom Git worktree-based approach. This change is intended to provide more granular control over multi-version documentation, improve internal link management, and enhance the user experience by addressing CSS issues with the version dropdown. Additionally, it updates the Python version requirement for the documentation environment to Python 3.11.
Highlights
- Custom Multi-Version Build System: Replaced
sphinx_multiversion
with a custom Python script (build_versions.py
) that leverages Git worktrees to build documentation for multiple versions (main branch and tagged releases). This offers greater flexibility and control over the build process. - Improved Version Dropdown UI: Implemented CSS fixes to limit the height of the version dropdown menu to approximately three rows, preventing overflow and improving usability for long version lists.
- Python Version Update: The documentation deployment environment now requires Python 3.11 or newer, as indicated in the updated
README
files. - Documentation Link Optimization: Internal and external links within the documentation have been reviewed and updated for accuracy and consistency, including dynamic links based on the current Git reference.
Using Gemini Code Assist
The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.
Invoking Gemini
You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command>
or @gemini-code-assist <command>
. Below is a summary of the supported commands.
Feature | Command | Description |
---|---|---|
Code Review | /gemini review |
Performs a code review for the current pull request in its current state. |
Pull Request Summary | /gemini summary |
Provides a summary of the current pull request in its current state. |
Comment | @gemini-code-assist | Responds in comments when explicitly tagged, both in issue comments and review comments. |
Help | /gemini help |
Displays a list of available commands. |
Customization
To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/
folder in the base of the repository. Detailed instructions can be found here.
Limitations & Feedback
Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.
You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.
Footnotes
-
Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution. ↩
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code Review
This pull request introduces a custom, git worktree
-based system for building multi-version documentation, replacing the sphinx_multiversion
extension. This is a significant enhancement for managing documentation across different versions of the project. The changes also include CSS fixes to improve the version selection dropdown and updates to internal documentation links to align with the new versioned URL structure. Overall, the changes are well-implemented. My feedback includes a critical fix for a path resolution issue that could affect local builds, suggestions to improve the robustness of the new build script with more specific exception handling, and a minor CSS refactoring for better maintainability.
…version list, link cleanup - Replace sphinx_multiversion with custom git worktree-based multi-version system - Limit version dropdown to ~3 rows to prevent overflow (slim/hover scrollbars) - Bump Python version in documentation deployment environment from 3.10 to 3.11 - Fix and optimize internal documentation links
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
…version list, link cleanup